import { fileURLToPath, URL } from 'node:url'

import { defineConfig } from 'vite'
import legacy from '@vitejs/plugin-legacy'
import vue2 from '@vitejs/plugin-vue2'

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
    vue2(),
    legacy({
      targets: ['ie >= 11'],
      additionalLegacyPolyfills: ['regenerator-runtime/runtime']
    })
  ],
  resolve: {
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url))
    }
  },
  // 配置前端服务地址和端口
  server: {
    // 是否开启 https
    https: false,
    // 前端端口
    port: 81,
    // 代理配置
    proxy: {
      // 配置需要代理的路径 --> 这里的意思是代理http://localhost:80/api/后的所有路由
      '/api': {
        // 目标地址 --> 服务器地址
        target: 'http://127.0.0.1:8081',
        // 允许跨域
        changeOrigin: true,
        // 允许websocket代理
        ws: true,
        // 重写路径 --> 作用与vue配置pathRewrite作用相同
        rewrite: (path) => path.replace(/^\/api/, "")
      }
    }
  }
})
